//相同的树

/**时间复杂度 O min(m,n)
 * p m
 * q n
 */
class Solution1 {
    public boolean isSameTree(TreeNode p, TreeNode q) {
        //结构上不同
       if((p == null && q != null) || (p != null && q == null)){
        return false;
       }
       //结构相同
       if(p == null && q == null){
        return true;
       }
       //值不相同
       if(p.val != q.val){
        return false;
       }
        //p != null && q != null && p.val == q.val
       return isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
    }
}